In user authentication systems, a one-time password-based system using a single-use password usable only once for user authentication purpose has become popular as one scheme having higher security than fixed password-based schemes. The one-time password-based system includes a token-based scheme using a token for creating a one-time password in accordance with a one-time-password generation rule synchronous with an authentication server, and a challenge/response scheme designed such that an authentication server transmits to a client a so-called “challenge” which is a value to be varied every time, and the client returns to the authentication server a response created by applying a client's fixed password to the challenge in accordance with a given rule. While the token-based scheme has an advantage of being able to reliably identify a user who owns a token, it forces the user to carry around the token, and has problems about cost of the token and security in the event of loss of the token. In this respect, the challenge/response scheme offers the convenience of being not necessary to use a token. On the other hand, due to a process of generating a one-time password using a client's fixed password which is highly likely to be analogized, the challenge/response scheme involves problems about poor protection against stealing during a password input operation and the need for installing dedicated software to allow a client to generate a response.
Late years, a new user authentication system has been developed based on a so-called “matrix Authentication®” scheme to improve the above problems in the conventional challenge/response scheme. This matrix authentication scheme is designed to arrange a plurality of random numbers in a given pattern format so as to create a matrix-form presentation pattern to be presented to a user requesting authentication, and apply a one-time-password derivation rule serving as a password of the user to certain pattern elements (a part of the random numbers) included in the presentation pattern so as to create a one-time password. Specifically, the presentation pattern is shared in common between a server and a client. Then, instead of a direct comparison of password, the sever carries out user authentication by comparing between a one-time password created on the client side as a result of applying the one-time-password derivation rule or the user's password to the presentation pattern, and a verification code created on the server side as a result of applying the one-time-password derivation rule or the user's password to the presentation pattern. In the matrix authentication scheme, a one-time-password derivation rule serving as a password is information about respective positions of certain pattern elements to be selected on a matrix-form presentation pattern and a selection order of the certain pattern elements, and characterized in that it is easily storable in the form of an image and cannot be figured out as a specific password even if being stolen during a password input operation.
Based on the matrix authentication scheme, a system has also been developed in which a presentation pattern is created based on a combination of a pattern seed value and other information so that it becomes possible to prevent the presentation pattern from being figured out even if the pattern seed value is stolen by a malicious third party through network eavesdropping (tapping or sniffing), etc. (see, for example, the following Patent Document 1). Specifically, in this authentication system, an authentication server is operable to generate and transmit a pattern seed value for creating a presentation pattern, to an authentication-requesting client. In response thereto, the authentication-requesting client is operable to display thereon the presentation pattern using the pattern seed value, and transmit a one-time password entered based on the presentation pattern, to the authentication server so as to perform user authentication through verification of the one-time password.